package arithmetic.leetCode.yi;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: yilin
 * Date: 2019-08-19
 * Time: 19:17
 */
public class LinkListAdd {

    public class ListNode {
        int val;
        ListNode next;

        ListNode(int x) {
            val = x;
        }
    }


    public ListNode addTwoNumbers(ListNode l1, ListNode l2) {

        ListNode tmp = new ListNode(0);

        ListNode head = tmp;

        int capicty = 0;
        while (l1 != null || l2 != null || capicty > 0) {
            int sum = ((l1 == null) ? 0 : l1.val) + ((l2 == null) ? 0 : l2.val) + capicty;
            tmp.next = new ListNode(sum % 10);
            capicty = sum / 10;
            tmp = tmp.next;
            l1 = l1 == null ? null : l1.next;
            l2 = l2 == null ? null : l2.next;

        }

        return head.next;

    }
}
